package com.ourteam.product.ui.dao;

import net.dao.IDataAccessInterface;

/**
 * Template Name : DAO接口模板 Template Version : 1 Template Last Modfiy Date : Thu Sep 21 11:14:14 CST
 * 2017 Auto Generate Date : 2018-12-14 15:15:04 Warning ! This file will be overwrite when
 * regenerate !
 */
public interface IBaseProductUIFormFieldTypeDAO
    extends IDataAccessInterface<ProductUIFormFieldType, ProductUIFormFieldTypeDAOQueryBean> {

  /** Mapped Entity Name */
  static final String EntityName = "PRODUCT_UI_FORM_FIELD_TYPE";

  /** Mapped Field ID */
  static final String Id = "PRODUCT_UI_FORM_FIELD_TYPE.ID";

  /** Mapped Field TYPE_NAME */
  static final String TypeName = "PRODUCT_UI_FORM_FIELD_TYPE.TYPE_NAME";

  /** Mapped Field TYPE_WIDGET */
  static final String TypeWidget = "PRODUCT_UI_FORM_FIELD_TYPE.TYPE_WIDGET";

  /** Mapped Field ALLOW_SUB_FIELD */
  static final String AllowSubField = "PRODUCT_UI_FORM_FIELD_TYPE.ALLOW_SUB_FIELD";

  /** Mapped Field LAST_MODIFY_USER */
  static final String LastModifyUser = "PRODUCT_UI_FORM_FIELD_TYPE.LAST_MODIFY_USER";

  /** Mapped Field LAST_MODIFY_TIME */
  static final String LastModifyTime = "PRODUCT_UI_FORM_FIELD_TYPE.LAST_MODIFY_TIME";

  /** Mapped Field STATUS */
  static final String Status = "PRODUCT_UI_FORM_FIELD_TYPE.STATUS";

  /** Mapped Field REMARKS */
  static final String Remarks = "PRODUCT_UI_FORM_FIELD_TYPE.REMARKS";

  /** Mapped Field TYPE_ICON */
  static final String TypeIcon = "PRODUCT_UI_FORM_FIELD_TYPE.TYPE_ICON";

  public static interface DataProperty {

    /** Attribute id */
    static final String Id = "id";

    /** Attribute typeName */
    static final String TypeName = "typeName";

    /** Attribute typeWidget */
    static final String TypeWidget = "typeWidget";

    /** Attribute allowSubField */
    static final String AllowSubField = "allowSubField";

    /** Attribute lastModifyUser */
    static final String LastModifyUser = "lastModifyUser";

    /** Attribute lastModifyTime */
    static final String LastModifyTime = "lastModifyTime";

    /** Attribute status */
    static final String Status = "status";

    /** Attribute remarks */
    static final String Remarks = "remarks";

    /** Attribute typeIcon */
    static final String TypeIcon = "typeIcon";
  }

  public static interface _DataObjectProperty extends DataProperty {}

  /**
   * Delete Data
   *
   * @param final long id
   * @throws Exception
   */
  void delete(final long id) throws Exception;
  /**
   * Find Data By Primary Key
   *
   * @param final long id
   * @throws Exception
   */
  ProductUIFormFieldType findById(final long id) throws Exception;
}
